The flash memory systems store data in non-volatile memories, which are accessed by blocks. In further detail, the unit to erase a non-volatile memory is a block, and data is written sequentially to a non-volatile memory in the unit of page. Therefore, it is disadvantageous to random read/write operations with non-volatile memories. Moreover, to write data having a size smaller than the minimum writing unit of a non-volatile memory or not sequentially to a non-volatile memory, it is required to search for a free block in the non-volatile memory in advance. To do so, a block in the non-volatile memory may have to be erased for the writing operation. Unfortunately, the lifetime of a non-volatile memory decreases as the number of erasing operations increases.
Therefore, it is desired a flash memory system for reduction of erasing operations to extend its lifetime.